const Menu = require('../model/public/Navlist')
const jwt = require('jsonwebtoken')
const config = require('../config')
const md5 = require('blueimp-md5')
const User = require('../model/user/user')
const publicController = {
  // 获取全部权限列表
  async getMenuList(req,res) {
    try {
        await Menu.find({}).exec((err,doc)=>{
            return  res.status(200).json({
                      status: 200,
                      lise:doc,
                      msg:'获取权限列表信息成功'
                    })            
        })
    } catch (error) {
        res.status(500).json({
          error_code: 1,
          msg: '获取权限列表信息失败'
      })
    }
  }, 
  // 用户登入
  async userLogin(req,res) {
    let body = req.body
    try {
      await User.findOne({email: body.email,password: md5(md5(body.password))}).exec((err,result)=>{
        let token = jwt.sign({ _id: result._id}, config.session.secrets, { expiresIn: '2h' })
        if(!result) {
          return res.status(201).json({
            message: '用户名或密码不正确'
          })
        }
        res.status(200).json({
          user:result,
          err_code: 0,
          message: '登入成功',
          token  
        })
      })
    } catch (error) {
      res.status(500).json({
        error_code: 1,
        message: '服务器错误'
      })
    }
  }  
}

module.exports = publicController